/**
 * @author 王晓伟
 * @version 0.1
 * @class Ext.ux.Window 扩展了一个EXT的Ext.Window,提供了Ext.Window的常用功能。
 * 布局默认采用anchor（锚点）布局。默认是模式化。
 * 定义了winsubmint、wincancel两个自定义事件，提交按钮是触发winsubmint事件，取消按钮触发wincancel事件。
 * 向EXT系统注册的组件xtype是uxwindow
 * @config 配置参数是一个JSON对象{object}
 * @extends Ext.Window
 */
Ext.ux.Window= Ext.extend(Ext.Window,{
	height:300,
	width:400,
	closable:false,
	layout:"anchor",
	bodyStyle:'padding:5px 5px 0',
	plain:true,
	closeAction:'hide', 
	autoScroll:false,
	title:Ext.definetitle,
	modal:true,
	frame:true,
	buttonAlign:'center',
	resizable:false,
	buttons:[{
		text:'确定',
		handler:function(){
			var _win = this.findParentBy(function(p){
				if(p.getXType() == 'uxwindow' ){
					return true;
				}
			});
			_win.fireEvent('winsubmint',_win,this);
		}
	},{
		text:'取消',
		handler:function(){
			var _win = this.findParentBy(function(p){
				if(p.getXType() == 'uxwindow' ){
					return true;
				}
			});
			_win.fireEvent('wincancel',_win,this);
		}
	}],
	initComponent:function() {
		Ext.ux.Window.superclass.initComponent.call(this);
		this.addEvents(
			/**
			 * @event 窗体提交按钮点击事件
			 * @param 窗体本身（Ext.ux.Window）
			 * @param 提交按钮
			 */
			'winsubmint',
			/**
			 * @event 窗体取消按钮点击事件
			 * @param 窗体本身（Ext.ux.Window）
			 * @param 取消按钮
			 */
			'wincancel',
			/**
			 * @event 窗体传输数据事件
			 * @param 数据OBJECT
			 * 
			 */
			'tradata',
			/**
			 * @event 向窗体传输数据事件
			 * @param 数据OBJECT
			 * 
			 */
			'datatra'
			
		);
	}
});
Ext.reg('uxwindow',Ext.ux.Window);